package com.etogc.util;

import android.content.Context;
import android.graphics.Bitmap;
import android.net.Uri;
import android.widget.ImageView;

import com.bumptech.glide.Glide;
import com.bumptech.glide.load.resource.bitmap.CenterCrop;
import com.etogc.groupchat.R;

public class ImageUtils {

    /**
     * 拼接图片地址
     *
     * @param url
     * @return
     */
    public static String getImageUrl(String url) {
        if (url != null) {
            if (!(url.startsWith("http") || url.startsWith("https"))) {
                url = GcUrl.HOST + url;
            }
        }
        return url;
    }

    /**
     * Glide设置图片
     *
     * @param context
     * @param path
     * @param image
     */
    public static void setImage(Context context, String path, ImageView image) {
        Glide.with(context)
                .load(path)
                .asBitmap()
                .centerCrop()
                .error(R.drawable.de_default_portrait)
                .placeholder(R.drawable.de_default_portrait)
                .into(image);
    }

    public static void setImage2(Context context, String path, ImageView image) {
        Glide.with(context)
                .load(path)
                .asBitmap()
                .error(R.drawable.de_default_portrait)
                .placeholder(R.drawable.de_default_portrait)
                .into(image);
    }

    /**
     * Glide设置圆角
     *
     * @param context
     * @param path
     * @param image
     */
    public static void setRadiuImage(Context context, String path, ImageView image) {
        Glide.with(context)
                .load(path)
//                .asBitmap()
//                .error(R.drawable.error_icon)
//                .placeholder(R.drawable.error_icon)
                .transform(new CenterCrop(context), new GlideRoundTransform(context, 6))
                .into(image);
    }

    /**
     * Glide设置圆角
     *
     * @param context
     * @param uri
     * @param image
     */
    public static void setUriRadiuImage(Context context, Uri uri, ImageView image) {
        Glide.with(context)
                .load(uri)
//                .asBitmap()
//                .error(R.drawable.error_icon)
//                .placeholder(R.drawable.error_icon)
                .transform(new CenterCrop(context), new GlideRoundTransform(context, 6))
                .into(image);
    }


    /**
     * Glide设置圆角
     *
     * @param context
     * @param path
     * @param image
     */
    public static void setBitmapRadiuImage(Context context, Bitmap path, ImageView image) {
        Glide.with(context)
                .load(path)
//                .asBitmap()
//                .error(R.drawable.error_icon)
//                .placeholder(R.drawable.error_icon)
                .transform(new CenterCrop(context), new GlideRoundTransform(context, 4))
                .into(image);
    }

    /**
     * Glide设置圆形图片
     *
     * @param context
     * @param path
     * @param image
     */
    public static void setCircleImage(Context context, String path, ImageView image) {
        Glide.with(context)
                .load(path)
                .asBitmap()
                .centerCrop()
                .error(R.drawable.de_default_portrait)
                .placeholder(R.drawable.de_default_portrait)
                .transform(new GlideCircleTransform(context))
                .into(image);
    }

    /**
     * Glide设置圆形图片
     *
     * @param context
     * @param path
     * @param image
     */
    public static void setCircleUri(Context context, Uri path, ImageView image) {
        Glide.with(context)
                .load(path)
                .asBitmap()
                .centerCrop()
                .error(R.drawable.de_default_portrait)
                .placeholder(R.drawable.de_default_portrait)
                .transform(new GlideCircleTransform(context))
                .into(image);
    }
}
